package cn.edu.csust.cvs.management.service;

import cn.edu.csust.cvs.management.common.ApiPageResult;
import cn.edu.csust.cvs.management.common.ApiResult;
import cn.edu.csust.cvs.management.controller.request.UserStatsPageQueryRequest;
import cn.edu.csust.cvs.management.controller.request.VideoStatsPageQueryRequest;
import cn.edu.csust.cvs.management.repository.entity.UserStatsView;
import cn.edu.csust.cvs.management.repository.entity.VideoStatsView;
import cn.edu.csust.cvs.management.service.domain.ClipStats;

import java.util.List;

/**
 * @Auther: snail
 * @Date: 2021/2/1 00:30
 * @Description: 审计管理服务接口
 */
public interface StatsService {

    /**
     * 查询用户操作审计信息
     * @param request
     * @return
     */
    ApiPageResult<List<UserStatsView>> pageQuery(UserStatsPageQueryRequest request);

    /**
     * 查询视频操作审计信息
     * @param request
     * @return
     */
    ApiPageResult<List<VideoStatsView>> pageQuery(VideoStatsPageQueryRequest request);

    /**
     * 查询视频片段操作审计信息
     * @param videoId
     * @return
     */
    ApiResult<List<ClipStats>>  statsVideoClip(Integer videoId);
}
